<vdb name="PeopleVDB" version="1"> <model name="People" visible="true"> <property name="importer.useFullSchemaName" value="false"/> <source name="infinispan-cache-dsl-connector" translator-name="infinispan-cache-dsl" connection-jndi-name="java:/infinispanRemote" /> <metadata type="DDL"><![CDATA[ CREATE FOREIGN TABLE Person ( PersonObject object OPTIONS (NAMEINSOURCE 'this', UPDATABLE FALSE, SEARCHABLE 'Unsearchable', NATIVE_TYPE 'java.lang.Object'), id integer NOT NULL OPTIONS (SEARCHABLE 'Searchable', NATIVE_TYPE 'int'), name string OPTIONS (SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'), email string OPTIONS (SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'), CONSTRAINT PK_ID PRIMARY KEY(id) ) OPTIONS (NAMEINSOURCE 'PersonsCache', UPDATABLE TRUE); CREATE FOREIGN TABLE PhoneNumber ( number string OPTIONS (NAMEINSOURCE 'phone.number', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'), type string OPTIONS (NAMEINSOURCE 'phone.type', SEARCHABLE 'Searchable', NATIVE_TYPE 'java.lang.String'), id integer NOT NULL OPTIONS (SELECTABLE FALSE, UPDATABLE FALSE, SEARCHABLE 'Searchable', NATIVE_TYPE 'int'), CONSTRAINT FK_PERSON FOREIGN KEY(id) REFERENCES Person (id) OPTIONS (NAMEINSOURCE 'phones') ) OPTIONS (NAMEINSOURCE 'PersonsCache', UPDATABLE TRUE); ]]> </metadata> </model> </vdb>